<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.14"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>dmaps: XDmaPs_Cmd Struct Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
  $(document).ready(initResizable);
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="HTML_custom.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectlogo"><img alt="Logo" src="xlogo_bg.gif"/></td>
  <td id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">dmaps
   </div>
   <div id="projectbrief">Xilinx SDK Drivers API Documentation</div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.14 -->
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
$(function() {
  initMenu('',false,false,'search.php','Search');
});
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
$(document).ready(function(){initNavTree('struct_x_dma_ps___cmd.html','');});
</script>
<div id="doc-content">
<div class="header">
  <div class="summary">
<a href="#pub-attribs">Data Fields</a>  </div>
  <div class="headertitle">
<div class="title">XDmaPs_Cmd Struct Reference<div class="ingroups"><a class="el" href="group__dmaps__v2__1.html">Dmaps_v2_1</a></div></div>  </div>
</div><!--header-->
<div class="contents">

<p>A DMA command consisits of a channel control struct, a block descriptor, a user defined program, a pointer pointing to generated DMA program, and execution result.  
 <a href="struct_x_dma_ps___cmd.html#details">More...</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
Data Fields</h2></td></tr>
<tr class="memitem:a188b831f0227eb1b2fdca11ba0582d96"><td class="memItemLeft" align="right" valign="top"><a class="el" href="struct_x_dma_ps___chan_ctrl.html">XDmaPs_ChanCtrl</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_x_dma_ps___cmd.html#a188b831f0227eb1b2fdca11ba0582d96">ChanCtrl</a></td></tr>
<tr class="memdesc:a188b831f0227eb1b2fdca11ba0582d96"><td class="mdescLeft">&#160;</td><td class="mdescRight">Channel Control Struct.  <a href="#a188b831f0227eb1b2fdca11ba0582d96">More...</a><br /></td></tr>
<tr class="separator:a188b831f0227eb1b2fdca11ba0582d96"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1002d3474d28e67143b5bc3c30f23b95"><td class="memItemLeft" align="right" valign="top"><a class="el" href="struct_x_dma_ps___b_d.html">XDmaPs_BD</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_x_dma_ps___cmd.html#a1002d3474d28e67143b5bc3c30f23b95">BD</a></td></tr>
<tr class="memdesc:a1002d3474d28e67143b5bc3c30f23b95"><td class="mdescLeft">&#160;</td><td class="mdescRight">Together with SgLength field, it's a scatter-gather list.  <a href="#a1002d3474d28e67143b5bc3c30f23b95">More...</a><br /></td></tr>
<tr class="separator:a1002d3474d28e67143b5bc3c30f23b95"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6ab4fb40a229c7fe11501b45554923b9"><td class="memItemLeft" align="right" valign="top">void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_x_dma_ps___cmd.html#a6ab4fb40a229c7fe11501b45554923b9">UserDmaProg</a></td></tr>
<tr class="memdesc:a6ab4fb40a229c7fe11501b45554923b9"><td class="mdescLeft">&#160;</td><td class="mdescRight">If user wants the driver to execute their own DMA program, this field points to the DMA program.  <a href="#a6ab4fb40a229c7fe11501b45554923b9">More...</a><br /></td></tr>
<tr class="separator:a6ab4fb40a229c7fe11501b45554923b9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a89109285101fd4eee7031df58ce0eb9b"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_x_dma_ps___cmd.html#a89109285101fd4eee7031df58ce0eb9b">UserDmaProgLength</a></td></tr>
<tr class="memdesc:a89109285101fd4eee7031df58ce0eb9b"><td class="mdescLeft">&#160;</td><td class="mdescRight">The length of user defined DMA program.  <a href="#a89109285101fd4eee7031df58ce0eb9b">More...</a><br /></td></tr>
<tr class="separator:a89109285101fd4eee7031df58ce0eb9b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aeb883ad07b5cee4971b7192b2c0058ac"><td class="memItemLeft" align="right" valign="top">void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_x_dma_ps___cmd.html#aeb883ad07b5cee4971b7192b2c0058ac">GeneratedDmaProg</a></td></tr>
<tr class="memdesc:aeb883ad07b5cee4971b7192b2c0058ac"><td class="mdescLeft">&#160;</td><td class="mdescRight">The DMA program genreated by the driver.  <a href="#aeb883ad07b5cee4971b7192b2c0058ac">More...</a><br /></td></tr>
<tr class="separator:aeb883ad07b5cee4971b7192b2c0058ac"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a27e023d00ef6ff3085e3dd2c9d061bfa"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_x_dma_ps___cmd.html#a27e023d00ef6ff3085e3dd2c9d061bfa">GeneratedDmaProgLength</a></td></tr>
<tr class="memdesc:a27e023d00ef6ff3085e3dd2c9d061bfa"><td class="mdescLeft">&#160;</td><td class="mdescRight">The length of the DMA program generated by the driver.  <a href="#a27e023d00ef6ff3085e3dd2c9d061bfa">More...</a><br /></td></tr>
<tr class="separator:a27e023d00ef6ff3085e3dd2c9d061bfa"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abbf6132cc94289f3c47d3f05d12ad0bb"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_x_dma_ps___cmd.html#abbf6132cc94289f3c47d3f05d12ad0bb">DmaStatus</a></td></tr>
<tr class="memdesc:abbf6132cc94289f3c47d3f05d12ad0bb"><td class="mdescLeft">&#160;</td><td class="mdescRight">0 on success, otherwise error code  <a href="#abbf6132cc94289f3c47d3f05d12ad0bb">More...</a><br /></td></tr>
<tr class="separator:abbf6132cc94289f3c47d3f05d12ad0bb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a921a09b7b950ba6e39e8426ca528c09b"><td class="memItemLeft" align="right" valign="top">u32&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_x_dma_ps___cmd.html#a921a09b7b950ba6e39e8426ca528c09b">ChanFaultType</a></td></tr>
<tr class="memdesc:a921a09b7b950ba6e39e8426ca528c09b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Channel fault type in case of fault.  <a href="#a921a09b7b950ba6e39e8426ca528c09b">More...</a><br /></td></tr>
<tr class="separator:a921a09b7b950ba6e39e8426ca528c09b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac0f1d9b27ea3e37948227028d1e0335f"><td class="memItemLeft" align="right" valign="top">u32&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_x_dma_ps___cmd.html#ac0f1d9b27ea3e37948227028d1e0335f">ChanFaultPCAddr</a></td></tr>
<tr class="memdesc:ac0f1d9b27ea3e37948227028d1e0335f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Channel fault PC address.  <a href="#ac0f1d9b27ea3e37948227028d1e0335f">More...</a><br /></td></tr>
<tr class="separator:ac0f1d9b27ea3e37948227028d1e0335f"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>A DMA command consisits of a channel control struct, a block descriptor, a user defined program, a pointer pointing to generated DMA program, and execution result. </p>
</div><h2 class="groupheader">Field Documentation</h2>
<a id="a1002d3474d28e67143b5bc3c30f23b95"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1002d3474d28e67143b5bc3c30f23b95">&#9670;&nbsp;</a></span>BD</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="struct_x_dma_ps___b_d.html">XDmaPs_BD</a> XDmaPs_Cmd::BD</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Together with SgLength field, it's a scatter-gather list. </p>

<p class="reference">Referenced by <a class="el" href="xdmaps__example__w__intr_8c.html#ae324d787c5677fa5cfea243c6af4b752">DmaDoneHandler()</a>.</p>

</div>
</div>
<a id="a188b831f0227eb1b2fdca11ba0582d96"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a188b831f0227eb1b2fdca11ba0582d96">&#9670;&nbsp;</a></span>ChanCtrl</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="struct_x_dma_ps___chan_ctrl.html">XDmaPs_ChanCtrl</a> XDmaPs_Cmd::ChanCtrl</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Channel Control Struct. </p>

</div>
</div>
<a id="ac0f1d9b27ea3e37948227028d1e0335f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac0f1d9b27ea3e37948227028d1e0335f">&#9670;&nbsp;</a></span>ChanFaultPCAddr</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">u32 XDmaPs_Cmd::ChanFaultPCAddr</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Channel fault PC address. </p>

</div>
</div>
<a id="a921a09b7b950ba6e39e8426ca528c09b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a921a09b7b950ba6e39e8426ca528c09b">&#9670;&nbsp;</a></span>ChanFaultType</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">u32 XDmaPs_Cmd::ChanFaultType</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Channel fault type in case of fault. </p>

</div>
</div>
<a id="abbf6132cc94289f3c47d3f05d12ad0bb"></a>
<h2 class="memtitle"><span class="permalink"><a href="#abbf6132cc94289f3c47d3f05d12ad0bb">&#9670;&nbsp;</a></span>DmaStatus</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int XDmaPs_Cmd::DmaStatus</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>0 on success, otherwise error code </p>

<p class="reference">Referenced by <a class="el" href="group__dmaps__v2__1.html#ga3691ba115c788c4f68a05cf05c486eeb">XDmaPs_Start()</a>.</p>

</div>
</div>
<a id="aeb883ad07b5cee4971b7192b2c0058ac"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aeb883ad07b5cee4971b7192b2c0058ac">&#9670;&nbsp;</a></span>GeneratedDmaProg</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void* XDmaPs_Cmd::GeneratedDmaProg</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>The DMA program genreated by the driver. </p>
<p>This field will be set if a user invokes the DMA program generation function. Or the DMA command is finished and a user informs the driver not to release the program buffer. This field has two purposes, one is to ask the driver to generate a DMA program while the DMAC is performaning DMA transactions. The other purpose is to debug the driver. </p>

<p class="reference">Referenced by <a class="el" href="group__dmaps__v2__1.html#ga24d151e510be2f13777cc85a563c6bbd">XDmaPs_Print_DmaProg()</a>, and <a class="el" href="group__dmaps__v2__1.html#ga3691ba115c788c4f68a05cf05c486eeb">XDmaPs_Start()</a>.</p>

</div>
</div>
<a id="a27e023d00ef6ff3085e3dd2c9d061bfa"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a27e023d00ef6ff3085e3dd2c9d061bfa">&#9670;&nbsp;</a></span>GeneratedDmaProgLength</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int XDmaPs_Cmd::GeneratedDmaProgLength</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>The length of the DMA program generated by the driver. </p>

<p class="reference">Referenced by <a class="el" href="group__dmaps__v2__1.html#ga24d151e510be2f13777cc85a563c6bbd">XDmaPs_Print_DmaProg()</a>.</p>

</div>
</div>
<a id="a6ab4fb40a229c7fe11501b45554923b9"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6ab4fb40a229c7fe11501b45554923b9">&#9670;&nbsp;</a></span>UserDmaProg</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void* XDmaPs_Cmd::UserDmaProg</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>If user wants the driver to execute their own DMA program, this field points to the DMA program. </p>

<p class="reference">Referenced by <a class="el" href="group__dmaps__v2__1.html#ga3691ba115c788c4f68a05cf05c486eeb">XDmaPs_Start()</a>.</p>

</div>
</div>
<a id="a89109285101fd4eee7031df58ce0eb9b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a89109285101fd4eee7031df58ce0eb9b">&#9670;&nbsp;</a></span>UserDmaProgLength</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int XDmaPs_Cmd::UserDmaProgLength</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>The length of user defined DMA program. </p>

</div>
</div>
</div><!-- contents -->
</div><!-- doc-content -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
  <ul>
    <li class="footer">Copyright &copy; 2015 Xilinx Inc. All rights reserved.</li>
  </ul>
</div>
</body>
</html>
